//
// Created by sjjmw on 2/23/2022.
//

#ifndef LEETCODE__17_H
#define LEETCODE__17_H

//todo
// 假设有k个人质和k个绑匪围成一圈。人质的编号从1到k，绑匪的编号从k+1到2k。
// 从编号1开始，每次从其中选出第m个人(隔m-1选出一人)出列。
// 希望求出m的最小值，使得最先出列的k个人都是绑匪，即都是编号从k+1到2k的人。
#include "iostream"

int born(int month){
    if(month<=0){
        return 0;
    }
    int sum=1;
    if(month<3){
        return sum;
    }
    sum+=born(month-2);//3月
    if(month<4){
        return sum;
    }
    sum+=born(month-3);
    if(month<5){
        return sum;
    }
    sum+=born(month-4);
    if(month>=7){
        sum--;
    }
    return sum;
}

int main() {
    int a;
//    std::cin>>set_cnt;
    while (scanf("%d", &a) != EOF) {

        printf("%d\n", born(a));
    }
    return 0;
}


#endif //LEETCODE__17_H
